package cn.iocoder.yudao.module.of.controller.admin.meetingminutes.vo;

import cn.iocoder.yudao.module.infra.dal.dataobject.file.FileDO;
import cn.iocoder.yudao.module.of.controller.admin.meetingminutesenduser.vo.MeetingMinuteSendUserRespVO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;

@Schema(description = "管理后台 - 会议纪要 Response VO")
@Data
@ExcelIgnoreUnannotated
public class MeetingMinutesRespVO {

    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "15970")
    @ExcelProperty("主键")
    private Long id;

    @Schema(description = "会议ID", example = "31614")
    @ExcelProperty("会议ID")
    private Long meetingId;

    @Schema(description = "会议纪要附件ID", example = "32691")
    @ExcelProperty("会议纪要附件ID")
    private Long minuteAttach;


    @Schema(description = "会议纪要附件", example = "{}}")
    private FileDO minuteAttachFile;

    @Schema(description = "会议纪要名称", example = "X出")
    private String minuteName;
    @Schema(description = "附件", example = "")
    private FileDO fileDO;

    @Schema(description = "主责部门ID", example = "21748")
    @ExcelProperty("主责部门ID")
    private Long mainRespDeptId;

    @Schema(description = "主责部门名称", example = "王五")
    @ExcelProperty("主责部门名称")
    private String mainRespDeptName;

    @Schema(description = "主责部门负责人", example = "9883")
    @ExcelProperty("主责部门负责人")
    private Long mainRespUserId;

    @Schema(description = "任务生成人ID", example = "23228")
    @ExcelProperty("任务生成人ID")
    private Long taskGenUserId;

    @Schema(description = "任务生成人名称", example = "赵六")
    @ExcelProperty("任务生成人名称")
    private String taskGenUserName;

    @Schema(description = "创建时间")
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;
    @Schema(description = "纪要下派人")
    private String minuteSendUserName;

    @Schema(description = "纪要下派时间")
    @ExcelProperty("纪要下派时间")
    private LocalDateTime minuteSendTime;

    @Schema(description = "任务下派人")
    private List<MeetingMinuteSendUserRespVO> sendUserList;

}